package ch01.test;

import java.lang.reflect.Method;

public class PersonTest3 {
    public static void main(String[] args) throws Exception{
        Class clz = Class.forName("ch01.entity.Person");
        Method getAge = clz.getDeclaredMethod("getAge",null);
        getAge.setAccessible(true);
        Object returnAge = getAge.invoke(null,null);
        System.out.println("年龄是："+returnAge);

        Object person = clz.newInstance();

        Method silentMethod = clz.getDeclaredMethod("silentMethod",null);
        silentMethod.setAccessible(true);
        silentMethod.invoke(person,null);

        Method setName = clz.getDeclaredMethod("setName",String.class);
        setName.invoke(person,"New Person");
        Object returnName = clz.getDeclaredMethod("getName").invoke(person);
        System.out.println("刚才设定的name是："+returnName);
    }
}
